package com.example.secondhandshop.ui.adapter;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import com.bumptech.glide.Glide;
import com.example.secondhandshop.R;

import com.example.secondhandshop.bean.Item1;

import java.util.List;

public class BoughtGoodsAdapter extends RecyclerView.Adapter<BoughtGoodsAdapter.ItemViewHolder> {
    private List<Item1> itemList;

    public BoughtGoodsAdapter(List<Item1> itemList) {
        this.itemList = itemList;//商品列表
    }
    //为RecyclerView的每个item创建一个ViewHolder，ViewHolder将负责显示item的数据。
    // 在RecyclerView的onBindViewHolder方法中，将数据绑定到这个ViewHolder的视图。
    @NonNull
    @Override
    public BoughtGoodsAdapter.ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.product_list1, parent, false);//使用LayoutInflater 从item_layout布局文件中加载视图，并将其赋值给View对象view
        return new BoughtGoodsAdapter.ItemViewHolder(view);//返回一个ItemViewHolder对象，该对象封装了item_layout布局中的视图和数据
    }

    @Override
    public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) {
        Item1 item = itemList.get(position);//表示当前ViewHolder在RecyclerView中的位置。
        //
        holder.productDescription.setText(item.getGoodsDescription());
        holder.productPrice.setText("￥" + item.getPrice());
        holder.sellerNickname.setText(item.getSellerName());

        // 加载用户头像
        Glide.with(holder.itemView.getContext())
                .load(item.getSellerAvatar())
                .placeholder(R.drawable.unknown_person_image)
                .into(holder.sellerAvatar);


        // 加载商品图片
        //goodsId = item.getGoodsId();
        //"https://guet-lab.oss-cn-hangzhou.aliyuncs.com/api/2024/10/13/63306b72-a497-4945-a524-59a0d7dfdfed.jpg"
        if (!item.getImageUrlList().isEmpty()) {
            Glide.with(holder.itemView.getContext())
                    .load(item.getImageUrlList().get(0)) // 加载第一个图片
                    .placeholder(R.drawable.unknown_goods)
                    .into(holder.productImage);
        }

    }


    //将数据绑定到ViewHolder的视图


    @Override
    public int getItemCount() {
        return itemList.size();
    }
    //ViewHolder用于缓存视图，以提高RecyclerView的性能
    static class ItemViewHolder extends RecyclerView.ViewHolder {
        // 定义视图元素
        TextView sellerNickname;//用户昵称
        TextView productDescription;//商品描述
        TextView productPrice;//商品价格
        ImageView sellerAvatar;//买家头像
        ImageView productImage;//商品图片
        Button contactbuyerButton;//联系买家
        Button repurchaseButton;

        public ItemViewHolder(@NonNull View itemView) {
            super(itemView);
            // 初始化视图元素
            sellerNickname = itemView.findViewById(R.id.sellerNickname);
            productDescription = itemView.findViewById(R.id.productDescription1);
            productPrice = itemView.findViewById(R.id.productPrice1);
            sellerAvatar = itemView.findViewById(R.id.sellerAvatar);
            productImage = itemView.findViewById(R.id.productImage1);
            contactbuyerButton = itemView.findViewById(R.id.contactbuyerButton1);
            repurchaseButton = itemView.findViewById(R.id.repurchaseButton1);
        }
    }
}


